unit CurrentTank;

{$mode objfpc}{$H+}

//========================================================================================
//
// Unit : CurrentTank.pas
//
// Description :
//
// Called By : Main : TfrmMain.mnuFileNewTankClick
//
// Calls : HUtils : ValidDirectoryCharacter
//
// Ver. : 1.0.0
//
// Date : 30 Sep 2015
//
//========================================================================================

interface

uses
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, Buttons,
  StdCtrls,
  // Application units
  HUtils;

type

  { TfrmCurrentTank }

  TfrmCurrentTank = class(TForm)
    bbtOK: TBitBtn;
    bbtCancel: TBitBtn;
    bbtHelp: TBitBtn;
    edtTankName: TEdit;
    StaticText1: TStaticText;
    procedure bbtCancelClick(Sender: TObject);
    procedure bbtOKClick(Sender: TObject);
    procedure edtTankNameKeyPress(Sender: TObject; var Key: char);
    procedure edtTankNameKeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure FormShow(Sender: TObject);
  private
    { private declarations }
    fTankName: string;
    fTankPath: string;
    function GetTankName: string;
    procedure SetTankName(strTankName: string);
    function GetTankPath: string;
    procedure SetTankPath(strTankPath: string);
  public
    { public declarations }
  end;

var
  frmCurrentTank: TfrmCurrentTank;

implementation

{$R *.lfm}

const
  cbytMaxTankNameLength = 20;
  cbytMinTankNameLength = 2;

//========================================================================================
//          PRIVATE ROUTINES
//========================================================================================
function TfrmCurrentTank.GetTankName: string;
begin

end;// function TfrmCurrentTank.GetTankName

//----------------------------------------------------------------------------------------
procedure TfrmCurrentTank.SetTankName(strTankName: string);
begin

end;// procedure TfrmCurrentTank.SetTankName(strTankName: string)

//----------------------------------------------------------------------------------------
function TfrmCurrentTank.GetTankPath: string;
begin

end;// function TfrmCurrentTank.GetTankPath

//----------------------------------------------------------------------------------------
procedure TfrmCurrentTank.SetTankPath(strTankPath: string);
begin

end;// procedure TfrmCurrentTank.SetTankPath(strTankPath: string)

//========================================================================================

//========================================================================================
//          PUBLIC ROUTINES
//========================================================================================

//========================================================================================
//          PUBLISHED ROUTINES
//========================================================================================

//========================================================================================
//          SUPPORT ROUTINES
//========================================================================================

//========================================================================================
//          MENU ROUTINES
//========================================================================================

//========================================================================================
//          FILE ROUTINES
//========================================================================================

//========================================================================================
//          COMMAND BUTTON ROUTINES
//========================================================================================
procedure TfrmCurrentTank.bbtCancelClick(Sender: TObject);
begin

  // Set the Tank Name and Path and create the directory
  fTankName := edtTankName.Text;

end;// procedure TfrmCurrentTank.bbtCancelClick

//========================================================================================
procedure TfrmCurrentTank.bbtOKClick(Sender: TObject);
begin

end;// procedure TfrmCurrentTank.bbtOKClick

//========================================================================================
//          CONTROL ROUTINES
//========================================================================================

//========================================================================================
//          TOOLBAR ROUTINES
//========================================================================================

//========================================================================================
//           STATUSBAR ROUTINES
//========================================================================================

//========================================================================================
//          DATABASE ROUTINES
//========================================================================================

//=========================
//  OnChange Routines
//=========================

//=========================
//  OnClick Routines
//=========================

//=========================
//  OnKeypress Routines
//=========================
procedure TfrmCurrentTank.edtTankNameKeyPress(Sender: TObject; var Key: char);
begin
  Key := ValidDirectoryCharacter(Key);
end;// procedure TfrmCurrentTank.edtTankNameKeyPress

//=========================
//  OnKeyUp Routines
//========================================================================================\
procedure TfrmCurrentTank.edtTankNameKeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Length(edtTankName.Text) >= cbytMinTankNameLength then
    bbtOK.Enabled := TRue
  else
    bbtOK.Enabled := False;
end;// procedure TfrmCurrentTank.edtTankNameKeyUp

//========================================================================================
//          FORM ROUTINES
//========================================================================================
procedure TfrmCurrentTank.FormShow(Sender: TObject);
begin

  edtTankName.MaxLength := cbytMaxTankNameLEngth;
  edtTankName.Text := '';
  bbtHelp.ENabled := False;
  bbtOK.Enabled := False;
  bbtCancel.Enabled := True;

end;// procedure TfrmCurrentTank.FormShow

//========================================================================================


end.//
unit CurrentTank;

